package com.ruoyi.jiaopei.mapper;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.annotation.DataColumn;
import com.ruoyi.common.annotation.DataPermission;
import com.ruoyi.jiaopei.domain.TbKj;
import com.ruoyi.jiaopei.domain.TbStudent;
import com.ruoyi.jiaopei.domain.bo.TbStudentBo;
import com.ruoyi.jiaopei.domain.vo.StudentCurriculumVo;
import com.ruoyi.jiaopei.domain.vo.TbKjVo;
import com.ruoyi.jiaopei.domain.vo.TbStudentVo;
import com.ruoyi.common.core.mapper.BaseMapperPlus;
import org.apache.ibatis.annotations.Param;

/**
 * 学员Mapper接口
 *
 * @author macy
 * @date 2024-04-03
 */
public interface TbStudentMapper extends BaseMapperPlus<TbStudentMapper, TbStudent, TbStudentVo> {

    @DataPermission({
        @DataColumn(key = "userName", value = "t.teacher_id")
    })
    Page<TbStudentVo> selectPageList(@Param("page") Page<TbStudentVo> page, @Param(Constants.WRAPPER) Wrapper<TbStudent> queryWrapper);



    Page<StudentCurriculumVo> queryStudentCurriculum(@Param("page") Page<StudentCurriculumVo> page, @Param(Constants.WRAPPER) Wrapper<TbStudent> queryWrapper);


    @DataPermission({
        @DataColumn(key = "userName", value = "t.teacher_id")
    })
    Page<StudentCurriculumVo> queryStudentCurriculumNew(@Param("page") Page<StudentCurriculumVo> page,@Param("bo") TbStudentBo bo,@Param(Constants.WRAPPER) Wrapper<TbStudent> queryWrapper);




    StudentCurriculumVo queryStudentCurriculumInfo(@Param(Constants.WRAPPER) Wrapper<TbStudent> queryWrapper);

}
